/*
 * MinQueue.h
 *
 *  Created on: Sep 15, 2012
 *      Author: jeffrey
 */

#ifndef MINQUEUE_H_
#define MINQUEUE_H_
#include<iostream>
#include<list>
#include<limits>

namespace structure {
using namespace std;
class MinQueue {
public:
	MinQueue();
	virtual ~MinQueue();
	void push(int v);
	int poll();
	int getMin();
private:
	list<int> values;
	list<int> mins;
};

} /* namespace structure */
#endif /* MINQUEUE_H_ */
